package org.villacoapa.censo.web.xml.facade;

import java.util.ArrayList;

import org.hibernate.Transaction;
import org.villacoapa.censo.HibernateSessionFactory;
import org.villacoapa.censo.dao.AreaInteres;
import org.villacoapa.censo.dao.Miembro;
import org.villacoapa.censo.dao.MiembroDAO;
import org.villacoapa.censo.dao.Subarea;
import org.villacoapa.censo.dao.SubareaDAO;
import org.villacoapa.censo.web.dto.MiembroDTO;
import org.villacoapa.censo.web.util.DTOUtil;
import org.villacoapa.censo.web.xml.parser.Parser;

public class ConsultaBasicaFacade {
	
	public static String idMiembroParam = null;
	
	
	public static String getAllSubareaInteresByIdArea(String idAreaStr){
		Integer idArea = new Integer(idAreaStr);
		Transaction tx = HibernateSessionFactory.getSession().beginTransaction();
		SubareaDAO dao = new SubareaDAO();
		
		AreaInteres area = new AreaInteres();
		area.setIdAreaInteres(idArea);
		ArrayList<Subarea> arResult = (ArrayList<Subarea>)dao.findByProperty("areaInteres", area);
		ArrayList arResult2 = new ArrayList<Subarea>();
		//Se hace esto debido a que el proxy de hibernate provoca conflicto con el parseo a XML
		for(Subarea sub:arResult){
			Subarea tmp = new Subarea();
			tmp.setDescripcion(sub.getDescripcion());
			tmp.setIdSubarea(sub.getIdSubarea());
			arResult2.add(tmp);
		}
		tx.commit();
		return Parser.listToXml("SubareasInteres",arResult2);
	}
	
	public static String getMiembroCompleto(String idMiembroStr){
		Integer idMiembro = new Integer(idMiembroStr);
		MiembroDAO dao = new MiembroDAO();
		Miembro miembro = dao.findById(idMiembro);
		MiembroDTO dto = DTOUtil.getMiembroDTO(miembro);
		return Parser.beanToXml(dto);
	}

}
